2022-06-22  Matias Fonzo  <selk@dragora.org>

    * Version 2.9 released.

    * Allow passing or changing options to tarlz(1) via configuration file
      (qirc) or just setting the special variable 'tarlz_compression_options'
      from a particular recipe.

    * Adjusted the simple detection of the package directory when trying
      to remove a package, this avoids a possible collision if it finds
      the package name as a regular file.

    * recipes: Added support for zstd(1) extensions.

    * recipes: Sample recipes have been updated.

2022-05-02  Matias Fonzo  <selk@dragora.org>

    * Version 2.8 released.

    * Use full remove mode when upgrading a package.  The purpose of this
      change is to clean up the removal of a previous package when the
      upgrade mode is invoked.  Previously the package documentation
      directory (and other possible files) were left on the filesystem.

    * Minor enhancements.

2021-12-14  Matias Fonzo  <selk@dragora.org>

    * Version 2.7 released.

    * Now Qi is more precise with exit status number 4 and 6, by hitting
      "exit" instead of just returning from the functions.

    * Small corrections for the description of Qi and also for the manual
      have been sent by Antonio Diaz Diaz.  Thanks!

2021-11-01  Matias Fonzo  <selk@dragora.org>

    * Version 2.6 released.

    * build: Make a checksum file for the copy of the recipe (the one
      included in the package, from which the recipe was built).

    * Do not read the configuration file on create, extract, and order
      modes.  It is not necessary to read the config file in these modes.

    * Minor changes.

2021-09-28  Matias Fonzo  <selk@dragora.org>

    * Version 2.5 released.

    * Searching for previously installed packages in an upgrade has been
      simplified, which will speed up and save resources in upgrade mode.

    * The network downloader has been changed to make use of GNU Wget2.

    * Minor enhancements.

2021-04-12  Matias Fonzo  <selk@dragora.org>

    * Version 2.4 released.

    * recipes: Added the variable "QICPPFLAGS" to pass the C/C++
      preprocessor flags to the environment variable "CPPFLAGS".

    * recipes: Added the "docs" and "docsdir" variables to be unset
      after processing a recipe.

    * recipes: Added support for executing other defined functions
      besides the main build() function.

    * recipes: Include build flags only if it is a real architecture
      when creating a package meta.

    * Change default values for QICFLAGS, QICXXFLAGS from "-g0 -O2" to
      just "-O2".  Including default value for LDFLAGS from "-s" to
      just "" (none).  This is to provide more generic values in the
      package manager distribution.

    * The documentation is in line with the changes made, plus the
      sample recipes have been updated.

    * Minor changes.

2020-12-25  Matias Fonzo  <selk@dragora.org>

    * Version 2.3 released.

    * doc: The general documentation of Qi has been divided to allow its
      inclusion from other .texi files.  This does not affect the internal
      functioning of Qi or the reading of the documentation for the user,
      but rather it prepares for the incoming Dragora Handbook (Dragora is
      the project from which Qi is currently developed).

    * Minor changes.

2020-11-09  Matias Fonzo  <selk@dragora.org>

    * Version 2.2 released.

    * Get the absolute path name to compose the current working directory
      when build.  A bug introduced in qi-2.0.

    * The readconfig() function has been simplified.

2020-09-07  Matias Fonzo  <selk@dragora.org>

    * Version 2.1 released.

    * Make the code for searching previous packages in an upgrade work again
      (bug introduced in previous version).

    * Minor changes.

2020-08-22  Matias Fonzo  <selk@dragora.org>

    * Version 2.0 released.

    * The user interface has been revised to better differenciate commands
      and options, for example: `qi install` instead of `qi -i`, `qi remove`
      instead of `qi -d`, `qi upgrade` instead of `qi -u`, `qi build`
      instead of `qi -b`, and so on.

    * The layout of the produced package names has been changed to better
      differenciate the software name and its version.

      Before: name-version-architecture-release[@pkgcategory].tlz
      Now:    name_version_architecture-release[@pkgcategory].tlz

    * The verbosity level has been changed to a minimal but essential result,
      while it can now be adjusted from the configuration file.

    * configure: The --arch= option has been added to define the default
      package architecture.

    * install: Fix assignation of 'rootdir' when it is empty and it
      relies on the value of 'targetdir' when runs a post-install script
      from subshell.

    * doc: Fix examples for 'rootdir' since the package directory and
      the target directory are relative to the specified root directory.

    * recipes: Add the special variable 'keep_destdir' to complement
      'keep_srcdir' in order to preserve 'destdir' when using build command.

    * Be quieter by default in relation to the graft(1) output, if the
      -v option is given it returns to the previous qi output behavior.

    * Set the --missing-crc option to tarlz(1) by default to make the
      package integrity check more reliable.

    * Use the power of awk(1) to display package descriptions.

    * Check and report if qi is connected to a terminal when reading from
      standard input.

    * Qi's messages have been improved to differentiate themselves from
      the output of other programs.

    * Added "coreutils", "bash", and "mksh" to the blacklist filter when
      upgrading packages.

    * Support for the SOURCE_DATE_EPOCH specification has been added.
      See: https://reproducible-builds.org/specs/source-date-epoch/

    * Default Qi C flags to be passed to the compiler (QICFLAGS, QICXXFLAGS)
      has been changed from "-g0 -Os" to "-g0 -O2".

    * The DESCRIPTION, OPTIONS, and ENVIRONMENT sections for the man page
      (generated by help2man) have been reorganized.

    * The main Info manual has been refreshed to reflect all these changes.

    * The examples in the doc directory have been updated.

    * The CREDITS file has been updated.

    * Code clean up and minor (but important) enhancements.

2020-04-20  Matias Fonzo  <selk@dragora.org>

    * Version 1.4 released.

    * build: Added support for optional "package category".  If the
      variable 'pkgcategory' is declared in a recipe, Qi will produce
      packages ala "<name>-<version>-<architecture>+release@category".

    * general: The configuration file is now included instead of being
      analyzed.  This is to have more room to declare things in general.

    * build: The 'arch' value is used as suffix for produced packages
      in order to have a well-organized (per-arch) output directory,
      e.g:
       /var/cache/qi/packages/noarch/
       /var/cache/qi/packages/i586/
       /var/cache/qi/packages/x86_64/
       ...

    * The code of blacklisted packages in the updates has been simplified.

    * doc: The "Variables from the environment" section has been improved.

    * build: The 'full_pkgname' variable is now added on the meta tag file.

    * doc: The manual has been updated to conform to this version.

    * Minor changes.

2019-09-10  Matias Fonzo  <selk@dragora.org>

    * Version 1.3 released.

    * Check the exit status when a recipe is imported or included.
      This will help to catch possible errors when using shell code,
      rather than proceeding with the recipe.

    * Minor changes.

2019-07-30  Matias Fonzo  <selk@dragora.org>

    * Version 1.2 released.

    * The variable 'arch' has been added to the package meta file,
      additionally, the variables 'program' and 'version' has been
      replaced with 'pkgname' and 'pkgversion' which take the value
      of those if they have not been previously established.

    * Minor changes.

2019-05-19  Matias Fonzo  <selk@dragora.org>

    * Version 1.1 released.

    * Default external tool for uncompressing files based on .tar.lz
      archives has been changed in the unpack() function from tarlz(1) to
      lzip(1) in combination with tar(1).  This is because some files
      could have been produced using a header format that differs from the
      default format used by tarlz(1), e.g. the GNU format (by GNU tar).

    * Some phrases have been improved in the manual, under the section
      "5.3 Writing recipes".  Thanks to kelsoo.

2019-04-15  Matias Fonzo  <selk@dragora.org>

    * Version 1.0 (stable) released.

    * The manual (user guide) has been updated.
